Data storage device and operating method thereof

ABSTRACT

An operating method for a data storage device includes providing a nonvolatile memory device including a plurality of pages; segmenting an address map which maps a logical address provided from a host device and a physical address of the nonvolatile memory device, by a plurality of address map segments according to a segment size that is set depending on a quality of service time allowed to process a request of the host device and an unprocessed workload; and flushing at least one of the address map segments in the nonvolatile memory device after processing the unprocessed workload.

CROSS-REFERENCES TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.15/829,025 filed on Dec. 1, 2017, which claims priority under 35 U.S.C.§ 119(a) to Korean application number 10-2017-0055433, filed on Apr. 28,2017. The disclosure of each of the foregoing applications isincorporated herein by reference in its entirety.

BACKGROUND 1. Technical Field

Various embodiments generally relate to a data storage device employinga nonvolatile memory device as a storage medium.

2. Related Art

Recently, the paradigm for the computer environment has been convertedinto ubiquitous computing so that computer systems can be used anytimeand anywhere. As a result, the use of portable electronic devices suchas mobile phones, digital cameras, and notebook computers has rapidlyincreased. In general, such portable electronic devices use a datastorage device which employs a memory device. A data storage device isused to store data to be used in a portable electronic device.

A data storage device employing a memory device provides advantages inthat, since there are no mechanical driving parts, stability anddurability are excellent, an information access speed is high and powerconsumption is small. Data storage devices having such advantagesinclude a universal serial bus (USB) memory device, memory cards havingvarious interfaces, a universal flash storage (UFS) device, and a solidstate drive (SSD).

SUMMARY

Various embodiments are directed to a data storage device capable ofimproving quality of service and stably storing address mappinginformation, and an operating method thereof.

In an embodiment, an operating method for a data storage device mayinclude: providing a nonvolatile memory device including a plurality ofpages; segmenting an address map which maps a logical address providedfrom a host device and a physical address of the nonvolatile memorydevice, by a plurality of address map segments according to a segmentsize that is set depending on a quality of service time allowed toprocess a request of the host device, and an unprocessed workload; andflushing at least one of the address map segments in the nonvolatilememory device after processing the unprocessed workload.

In an embodiment, a data storage device may include: a nonvolatilememory device including a plurality of pages which are included inplanes of dies; a random access memory suitable for storing an addressmap which maps a physical address of the nonvolatile memory device and alogical address provided from a host device; and a control unit suitablefor controlling the nonvolatile memory device by referencing the addressmap loaded on the random access memory, and processing a request of thehost device, wherein the control unit segments the address map by aplurality of address map segments according to a segment size that isset depending on a quality of service time allowed to process therequest of the host device and an unprocessed workload.

According to the embodiments, quality of service of the data storagedevice may be improved, and address mapping information may be stablystored.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a data storage device inaccordance with an embodiment of the present invention.

FIG. 2 is a diagram describing a memory cell region and a program unitof a nonvolatile memory device shown in FIG. 1.

FIG. 3 is a diagram describing a software driven in the data storagedevice shown in FIG. 1.

FIG. 4 is a diagram explaining an address map segment size that means aunit by which an address map is segmented, in accordance with anembodiment of the present invention.

FIG. 5 is a diagram describing an address map segment size that ischangeable depending on a workload, in accordance with an embodiment ofthe present invention.

FIG. 6 is a diagram explaining a method for setting an address mapsegment size, in accordance with an embodiment of the present invention.

FIG. 7 is a diagram illustrating a data processing system including asolid state drive, in accordance with an embodiment of the presentinvention.

FIG. 8 is a diagram illustrating a data processing system including adata storage device, in accordance with an embodiment of the presentinvention.

FIG. 9 is a diagram illustrating a data processing system including adata storage device, in accordance with an embodiment of the presentinvention.

FIG. 10 is a diagram illustrating a network system including a datastorage device, in accordance with an embodiment of the presentinvention.

DETAILED DESCRIPTION

In the present invention, advantages, features and methods for achievingthem will become more apparent after a reading of the followingexemplary embodiments taken in conjunction with the drawings. Thepresent invention may, however, be embodied in different forms andshould not be construed as being limited to the embodiments set forthherein. Rather, these embodiments are provided to describe the presentinvention in detail to the extent that a person skilled in the art towhich the invention pertains can easily enforce the technical concept ofthe present invention.

It is to be understood herein that embodiments of the present inventionare not limited to the particulars shown in the drawings and that thedrawings are not necessarily to scale and in some instances proportionsmay have been exaggerated in order to more clearly depict certainfeatures of the invention. While particular terminology is used herein,it is to be appreciated that the terminology used herein is for thepurpose of describing particular embodiments only and is not intended tolimit the scope of the present invention.

As used herein, the term “and/or” includes any and all combinations ofone or more of the associated listed items. It will be understood thatwhen an element is referred to as being “on,” “connected to” or “coupledto” another element, it may be directly on, connected or coupled to theother element or intervening elements may be present. As used herein, asingular form is intended to include plural forms as well, unless thecontext clearly indicates otherwise. It will be further understood thatthe terms “includes” and/or “including,” when used in thisspecification, specify the presence of at least one stated feature,step, operation, and/or element, but do not preclude the presence oraddition of one or more other features, steps, operations, and/orelements thereof.

Hereinafter, a data storage device and an operating method thereof willbe described below with reference to the accompanying drawings throughvarious examples of embodiments.

FIG. 1 is a block diagram illustrating a data storage device 100 inaccordance with an embodiment of the present invention.

The data storage device 100 may store data to be accessed by a hostdevice (not shown) such as a mobile phone, an MP3 player, a laptopcomputer, a desktop computer, a game player, a TV, an in-vehicleinfotainment system, and so forth. The data storage device 100 may alsobe referred to as a memory system.

The data storage device 100 may be manufactured as any one of varioustypes of storage devices according to a host interface which is atransmission protocol interfacing the data storage device 100 with thehost device. For example, the data storage device 100 may be configuredas any one of various types of storage devices such as a solid statedrive (SSD), a multimedia card in the form of an MMC, an eMMC, an RS-MMCand a micro-MMC, a secure digital card in the form of an SD, a mini-SDand a micro-SD, a universal serial bus (USB) storage device, a universalflash storage (UFS) device, a personal computer memory cardinternational association (PCMCIA) card type storage device, aperipheral component interconnection (PCI) card type storage device, aPCI express (PCI-E) card type storage device, a compact flash (CF) card,a smart media card, a memory stick, and so forth.

The data storage device 100 may be manufactured as any one among varioustypes of package types. For example, the data storage device 100 may bemanufactured as any one of various types of package types such as apackage-on-package (POP), a system-in-package (SIP), a system-on-chip(SOC), a multi-chip package (MCP), a chip-on-board (COB), a wafer-levelfabricated package (WFP) and a wafer-level stack package (WSP).

The data storage device 100 may include a controller 200 and anonvolatile memory device 300. The controller 200 may include a hostinterface unit 210, a control unit 220, a random access memory 230, anda memory control unit 240.

The host interface unit 210 may interface the host device and the datastorage device 100. For example, the host interface unit 210 maycommunicate with the host device by using a host interface, that is, anyone among standard transmission protocols such as universal serial bus(USB), universal flash storage (UFS), multimedia card (MMC), paralleladvanced technology attachment (PATA), serial advanced technologyattachment (SATA), small computer system interface (SCSI), serialattached SCSI (SAS), peripheral component interconnection (PCI) and PCIexpress (PCI-E) protocols.

The control unit 220 may be configured by a micro control unit (MCU) ora central processing unit (CPU). The control unit 220 may process arequest which is transmitted from the host device. In order to processthe request, the control unit 220 may drive an instruction or algorithmof a code type, that is, a software, loaded on the random access memory230, and may control internal function blocks or the nonvolatile memorydevice 300.

The random access memory 230 may be configured by a random access memorysuch as a dynamic random access memory (DRAM) or a static random accessmemory (SRAM). The random access memory 230 may store a software to bedriven by the control unit 220. Further, the random access memory 230may store data necessary for driving the software. That is, the randomaccess memory 230 may operate as the working memory of the control unit220.

The random access memory 230 may temporarily store data to betransmitted from the host device to the nonvolatile memory device 300 orfrom the nonvolatile memory device 300 to the host device. In otherwords, the random access memory 230 may operate as a data buffer memoryor a data cache memory.

The memory control unit 240 may control the nonvolatile memory device300 according to control of the control unit 220. The memory controlunit 240 may also be referred to as a memory interface unit. The memorycontrol unit 240 may provide control signals to the nonvolatile memorydevice 300. The control signals may include a command, an address, acontrol signal and so forth for controlling the nonvolatile memorydevice 300. The memory control unit 240 may provide data to thenonvolatile memory device 300 or may be provided with data from thenonvolatile memory device 300.

The nonvolatile memory device 300 may be coupled with the controller 200through a channel CH which includes at least one signal line capable oftransmitting a command, an address, control signals and data. Thenonvolatile memory device 300 may be used as the storage medium of thedata storage device 100.

The nonvolatile memory device 300 may be configured as any one ofvarious types of nonvolatile memory devices such as a NAND flash memorydevice, a NOR flash memory device, a ferroelectric random access memory(FRAM) using a ferroelectric capacitor, a magnetic random access memory(MRAM) using a tunneling magneto-resistive (TMR) layer, a phase changerandom access memory (PCRAM) using a chalcogenide alloy, and a resistiverandom access memory (RERAM) using a transition metal oxide.

FIG. 2 is a diagram describing a memory cell region and a program unitof the nonvolatile memory device 300 shown in FIG. 1.

As an example, the nonvolatile memory device 300 which is configured bytwo dies D1 and D2, two planes PL1 and PL2 per die and two memory blocksB1 and B2 per plane is illustrated. Each of the memory blocks B1 and B2will be exemplified to include four memory cells which are arranged atareas where two word lines WL1 and WL2 and two bit lines BL1 and BL2intersect with each other. The number of dies, the number of planes, thenumber of memory blocks per plane and the number of memory cells permemory block in the nonvolatile memory device 300 may be changedvariously.

From an operational viewpoint, or a physical or structural viewpoint,the memory cells of the nonvolatile memory device 300 may be configuredby a hierarchical memory cell set or memory cell unit. For example,memory cells which are coupled to the same word line and are to be read,and programmed or written simultaneously may be configured as a page.Also, memory cells to be erased simultaneously may be configured as amemory block. Further, memory cells to be controlled in parallel bydifferent write drivers and sense amplifiers (not shown) may beconfigured as different planes.

To increase a data processing amount, pages which are operable inparallel may be configured as a super page SP. For example, a first pagePG1 included in the first plane PL1 of the first die D1, a second pagePG2 included in the second plane PL2 of the first die D1, a third pagePG3 included in the first plane PL1 of the second die D2 and a fourthpage PG4 included in the second plane PL2 of the second die D2 may beconfigured as one super page SR Therefore, when a plurality of pages areconfigured as one super page SP, the super page SP may be defined as theunit of memory cells which are read or programmed at one time.

FIG. 3 is a diagram describing software driven in the data storagedevice 100 shown in FIG. 1.

When the nonvolatile memory device 300 is configured as a flash memorydevice, the control unit 220 may drive a software referred to as a flashtranslation layer FTL, to control intrinsic operations of the flashmemory device 300 and provide device compatibility to the host device.Through driving of such a flash translation layer FTL, the data storagedevice 100 may be recognized by the host device, and used as a generaldata storage device such as a hard disk.

The flash translation layer FTL loaded on the random access memory 230may be configured by modules for performing various functions andmetadata necessary for driving of the modules. For example, referring toFIG. 3, the flash translation layer FTL may include an address map MAP,a wear-leveling module WLM, a bad block management module BBM and agarbage collection module GCM. The configuration of the flashtranslation layer FTL is not limited to the above-described modules, andmay further include modules such as an interleaving module for operatingflash memory devices 300 in parallel, a sudden power-off managementmodule for being prepared for an unexpected power-off, and so forth.

The wear-leveling module WLM may manage wear levels for memory blocks ofthe flash memory device 300. Memory cells of the flash memory device 300may be aged by an erase operation and a program operation. Aged memorycells, that is, worn-out memory cells may cause fails for example,physical defects. The wear-leveling module WLM may manage theprogram-erase counts of respective memory blocks to be leveled so as toprevent a certain memory block from being worn out faster than the othermemory blocks.

The bad block management module BBM may manage a memory block in which afail has occurred, among the memory blocks of the flash memory device300. As described above, a fail for example, a physical defect may occurin a worn-out memory cell. Data stored in a failed memory cell may notbe read normally, or data may not be stored normally in a failed memorycell. The bad block management module BBM may manage a memory blockincluding a failed memory cell, in such a way so it is not to be used.

The flash memory device 300 does not support overwrite of data due to astructural characteristic thereof. If data is stored in a memory cell inwhich data is written, reliability of the stored data may not beensured. Therefore, in order to rewrite data in a memory cell which hasalready stored data, an erase operation should be preceded. The eraseoperation of the flash memory device 300 requires a lengthy time. Forthis reason, the control unit 220 stores data in another memory cellwhich has been already returned to an erased state without storing thedata in an erased memory cell after erasing a memory cell which isstored data. By this operation of the control unit 220, valid data andinvalid data are mixed in the flash memory device 300. As the occasiondemands, the control unit 220 may perform a series of operations ofcollecting valid data to a place and erasing invalid data, that is, agarbage collection operation. The garbage collection operation may bereferred to as a merge operation.

When the host device accesses the data storage device 100, for example,the host device requests a read operation or a write operation to thedata storage device 100, the host device may provide a logical addressto the data storage device 100. The flash translation layer FTL maytranslate the logical address into a physical address of the flashmemory device 300, and perform a requested operation by referring to thephysical address. In order for such an address translation operation tooccur, address mapping information, that is, the address map MAP, may beincluded in the flash translation layer FTL.

FIG. 4 is a diagram describing an address map segment size that means aunit by which an address map is segmented, in accordance with anembodiment of the present invention. FIG. 5 is a diagram describing anaddress map segment size that is changeable depending on a workload, inaccordance with an embodiment of the present invention.

The address map MAP may be referenced and updated frequently during theruntime of the data storage device 100. To prevent updated addressmapping information from being lost, the address map MAP may often beflushed or backed up in the flash memory device 300.

If the address map MAP is flushed entirely at once, a long time may betaken to the extent that a request of the host device cannot beprocessed. That is, if it takes a long time to flush the address mapMAP, a time allowed to process a request of the host device may not besatisfied. The time allowed to process a request of the host devicemeans a time for ensuring quality of service (QoS) for the request, and,hereinafter, will be referred to as a quality of service time tQoS. Thequality of service time tQoS may be a time that is prescribed accordingto the transmission protocol between the host device and the datastorage device 100.

Thus, the address map MAP may be flushed by being segmented such that arequest may be processed within the quality of service time tQoS. Asshown in FIG. 4, the address map MAP may be segmented by a plurality ofaddress map segments MSG1 to MSGn according to a segment size SGSZ, andflushed by the unit of each of the address map segments MSG1 to MSGn. Atleast one of the address map segments MSG1 to MSGn may be flushed afteran unprocessed workload UPWKL is processed.

The segment size SGSZ as the segment unit of the address map MAP may bechanged during the runtime of the data storage device 100. For example,as shown in FIG. 5, the segment size SGSZ may be changed depending onthe unprocessed workload UPWKL. Hence, the segment size SGSZ of anaddress map segment MSG to be flushed may be decreased as the amount ofthe unprocessed workload UPWKL is increased, and may be increased as theamount of the unprocessed workload UPWKL is decreased.

FIG. 6 is a diagram describing an operation of the control unit 220which sets an address map segment size, in accordance with an embodimentof the present invention.

The control unit 220 may set the segment size SGSZ by a size that isobtained by subtracting a data amount DT_UPWKL for processing anunprocessed workload from a data amount DT_QoS capable of beingprocessed within the quality of service time tQoS. In other words, thecontrol unit 220 may set the segment size SGSZ such that at least oneaddress map segment MSG may be flushed in a time left after processing arequest of the host device.

The data amount DT_UPWKL may include a data amount for processing arequest of the host device. For example, the data amount DT_UPWKL may becalculated depending on an amount of data write-requested from the hostdevice. When a background operation such as garbage collection should bepreceded to process a request of the host device, the data amountDT_UPWKL may additionally include a data amount for processing thebackground operation.

The data amount DT_QoS may be calculated as the product of a maximumcount capable of programming pages within the quality of service timetQoS and the size of the super page SP of FIG. 2. The maximum count forthe quality of service time tQoS may be calculated by dividing thequality of service time tQoS by a time tPROG required to program onepage. The size of the super page SP may be calculated as the product ofthe size of one page PG, the number of planes PL per die and the numberof dies D, which configure one super page.

While various embodiments have been described above, it will beunderstood to those skilled in the art that the embodiments describedare examples only. Accordingly, the data storage device and theoperating method thereof described herein should not be limited based onthe described embodiments.

FIG. 7 is a diagram illustrating a data processing system 1000 includinga solid state drive (SSD) 1200, in accordance with an embodiment of thepresent invention.

Referring to FIG. 7, the data processing system 1000 may include a hostdevice 1100 and the SSD 1200.

The SSD 1200 may include a controller 1210, a buffer memory device 1220,nonvolatile memory devices 1231 to 123 n, a power supply 1240, a signalconnector 1250, and a power connector 1260.

The controller 1210 may control general operations of the SSD 1200. Thecontroller 1210 may include a host interface unit 1211, a control unit1212, a random access memory 1213, an error correction code (ECC) unit1214, and a memory interface unit 1215.

The host interface unit 1211 may exchange a signal SGL with the hostdevice 1100 through the signal connector 1250. The signal SGL mayinclude a command, an address, data, and so forth.

The host interface unit 1211 may interface the host device 1100 and theSSD 1200 according to the protocol of the host device 1100. For example,the host interface unit 1211 may communicate with the host device 1100through any one of standard interface protocols such as secure digital,universal serial bus (USB), multimedia card (MMC), embedded MMC (eMMC),personal computer memory card international association (PCMCIA),parallel advanced technology attachment (PATA), serial advancedtechnology attachment (SATA), small computer system interface (SCSI),serial attached SCSI (SAS), peripheral component interconnection (PCI),PCI express (PCI-E) and universal flash storage (UFS).

The control unit 1212 may analyze and process the signal SGL inputtedfrom the host device 1100. The control unit 1212 may control operationsof internal function blocks according to a firmware or a software fordriving the SSD 1200. The random access memory 1213 may be used as aworking memory for driving such a firmware or software.

The ECC unit 1214 may generate parity data of data to be transmitted tothe nonvolatile memory devices 1231 to 123 n. The generated parity datamay be stored together with the data in the nonvolatile memory devices1231 to 123 n. The ECC unit 1214 may detect an error of the data readfrom the nonvolatile memory devices 1231 to 123 n, based on the paritydata. If a detected error is within a correctable range, the ECC unit1214 may correct the detected error.

The memory interface unit 1215 may provide control signals such ascommands and addresses to the nonvolatile memory devices 1231 to 123 n,according to control of the control unit 1212. Moreover, the memoryinterface unit 1215 may exchange data with the nonvolatile memorydevices 1231 to 123 n, according to control of the control unit 1212.For example, the memory interface unit 1215 may provide the data storedin the buffer memory device 1220, to the nonvolatile memory devices 1231to 123 n, or provide the data read from the nonvolatile memory devices1231 to 123 n, to the buffer memory device 1220.

The buffer memory device 1220 may temporarily store data to be stored inthe nonvolatile memory devices 1231 to 123 n. Further, the buffer memorydevice 1220 may temporarily store the data read from the nonvolatilememory devices 1231 to 123 n. The data temporarily stored in the buffermemory device 1220 may be transmitted to the host device 1100 or thenonvolatile memory devices 1231 to 123 n according to control of thecontroller 1210.

The nonvolatile memory devices 1231 to 123 n may be used as storagemedia of the SSD 1200. The nonvolatile memory devices 1231 to 123 n maybe coupled with the controller 1210 through a plurality of channels CH1to CHn, respectively. One or more nonvolatile memory devices may becoupled to one channel. The nonvolatile memory devices coupled to eachchannel may be coupled to the same signal bus and data bus.

The power supply 1240 may provide power PWR inputted through the powerconnector 1260, to the inside of the SSD 1200. The power supply 1240 mayinclude an auxiliary power supply 1241. The auxiliary power supply 1241may supply power to allow the SSD 1200 to be normally terminated when asudden power-off occurs. The auxiliary power supply 1241 may includelarge capacity capacitors.

The signal connector 1250 may be configured by various types ofconnectors depending on an interface scheme between the host device 1100and the SSD 1200.

The power connector 1260 may be configured by various types ofconnectors depending on a power supply scheme of the host device 1100.

FIG. 8 is a diagram illustrating a data processing system 2000 includinga data storage device 2200, in accordance with an embodiment of thepresent invention.

Referring to FIG. 8, the data processing system 2000 may include a hostdevice 2100 and the data storage device 2200.

The host device 2100 may be configured in the form of a board such as aprinted circuit board (PCB). Although not shown, the host device 2100may include internal function blocks for performing the function of ahost device.

The host device 2100 may include a connection terminal 2110 such as asocket, a slot or a connector. The data storage device 2200 may bemounted to the connection terminal 2110.

The data storage device 2200 may be configured in the form of a boardsuch as a printed circuit board. The data storage device 2200 may bereferred to as a memory module or a memory card. The data storage device2200 may include a controller 2210, a buffer memory device 2220,nonvolatile memory devices 2231 and 2232, a power management integratedcircuit (PMIC) 2240, and a connection terminal 2250.

The controller 2210 may control general operations of the data storagedevice 2200. The controller 2210 may be configured in the same manner asthe controller 1210 shown in FIG. 7.

The buffer memory device 2220 may temporarily store data to be stored inthe nonvolatile memory devices 2231 and 2232. Further, the buffer memorydevice 2220 may temporarily store the data read from the nonvolatilememory devices 2231 and 2232. The data temporarily stored in the buffermemory device 2220 may be transmitted to the host device 2100 or thenonvolatile memory devices 2231 and 2232 according to control of thecontroller 2210.

The nonvolatile memory devices 2231 and 2232 may be used as storagemedia of the data storage device 2200.

The PMIC 2240 may provide the power inputted through the connectionterminal 2250, to the inside of the data storage device 2200. The PMIC2240 may manage the power of the data storage device 2200 according tocontrol of the controller 2210.

The connection terminal 2250 may be coupled to the connection terminal2110 of the host device 2100. Through the connection terminal 2250,signals such as commands, addresses, data and so forth and power may betransferred between the host device 2100 and the data storage device2200. The connection terminal 2250 may be configured into various typesdepending on an interface scheme between the host device 2100 and thedata storage device 2200. The connection terminal 2250 may be disposedon any one side of the data storage device 2200.

FIG. 9 is a diagram illustrating a data processing system 3000 includinga data storage device 3200, in accordance with an embodiment of thepresent invention.

Referring to FIG. 9, the data processing system 3000 may include a hostdevice 3100 and the data storage device 3200.

The host device 3100 may be configured in the form of a board such as aprinted circuit board (PCB). Although not shown, the host device 3100may include internal function blocks for performing the function of ahost device.

The data storage device 3200 may be configured in the form of asurface-mounting type package. The data storage device 3200 may bemounted to the host device 3100 through solder balls 3250. The datastorage device 3200 may include a controller 3210, a buffer memorydevice 3220, and a nonvolatile memory device 3230.

The controller 3210 may control general operations of the data storagedevice 3200. The controller 3210 may be configured in the same manner asthe controller 1210 shown in FIG. 7.

The buffer memory device 3220 may temporarily store data to be stored inthe nonvolatile memory device 3230. Further, the buffer memory device3220 may temporarily store the data read from the nonvolatile memorydevice 3230. The data temporarily stored in the buffer memory device3220 may be transmitted to the host device 3100 or the nonvolatilememory device 3230 according to control of the controller 3210.

The nonvolatile memory device 3230 may be used as the storage medium ofthe data storage device 3200.

FIG. 10 is a diagram illustrating a network system 4000 including a datastorage device 4200, in accordance with an embodiment of the presentinvention.

Referring to FIG. 10, the network system 4000 may include a serversystem 4300 and a plurality of client systems 4410 to 4430 which arecoupled through a network 4500.

The server system 4300 may service data in response to requests from theplurality of client systems 4410 to 4430. For example, the server system4300 may store the data provided from the plurality of client systems4410 to 4430. For another example, the server system 4300 may providedata to the plurality of client systems 4410 to 4430.

The server system 4300 may include a host device 4100 and the datastorage device 4200. The data storage device 4200 may be configured asthe data storage device 100 shown in FIG. the data storage device 1200shown in FIG. 7, the data storage device 2200 shown in FIG. 8 or thedata storage device 3200 shown in FIG. 9.

While various embodiments have been described above, it will beunderstood to those skilled in the art that the embodiments describedare examples only. Accordingly, the data storage device and theoperating method thereof described herein should not be limited based onthe described embodiments. It will be apparent to those skilled in theart to which the present invention pertains that various other changesand modifications may be made without departing from the spirit andscope of the invention as defined in the following claims.

What is claimed is:
 1. A data storage system comprising: a nonvolatilememory device for storing data including host data provided by a host; arandom access memory for storing meta data for managing the host data;and a control unit configured to process a request provided by the hostand adaptively flush the meta data stored in the random access memory tothe nonvolatile memory device based on a quality of service requirementfor the request provided by the host, wherein the quality of servicerequirement for the request relates to a type of the host.
 2. The datastorage system according to claim 1, wherein an amount of the meta dataflushed to the nonvolatile memory device is determined based on thequality of service requirement for the request provided by the host. 3.The data storage system according to claim 1, wherein the control unitflushes a portion of the meta data for satisfying the quality of servicerequirement for the request.
 4. The data storage system according toclaim 1, wherein the control unit segments the meta data by a pluralityof segments based on the quality of service requirement for the requestand flushes by a unit of each of the plurality of segments.
 5. The datastorage system according to claim 4, wherein a size of each of theplurality of segments is changed during a runtime of the data storagesystem, and wherein the size of each of the plurality of segments ischanged depending on a data amount for processing an unprocessedworkload.
 6. The data storage system according to claim 5, wherein thecontrol unit sets the size of each of the plurality of segments based ona data amount to be processed within the quality of service requirementfor the request and the data amount for processing the unprocessedworkload.
 7. The data storage system according to claim 5, wherein thedata amount for processing the unprocessed workload includes a dataamount for processing a background operation to be preceded to processthe request.
 8. The data storage system according to claim 1, whereinthe meta data includes an address map.
 9. A data storage systemcomprising: a nonvolatile memory device for storing data including hostdata provided by a host; a random access memory for storing meta datafor managing the host data; and a control unit configured to process aplurality of requests provided by the host and flush the meta datastored in the random access memory to the nonvolatile memory device withsatisfying a quality of service requirement for the plurality ofrequests.
 10. The data storage system according to claim 9, wherein thequality of service requirement for the plurality of requests relates toa type of the host.
 11. The data storage system according to claim 9,wherein an amount of the meta data flushed to the nonvolatile memorydevice between processing the plurality of the requests depends on thequality of service requirement for the plurality of requests.
 12. Anoperating method for a data storage system comprising: storing meta datain a random access memory; processing a plurality of requests providedby a host; and flushing a portion of the meta data to a nonvolatilememory device to satisfy a quality of service requirement which relatesto a type of the host.
 13. The operating method according to claim 12,wherein the flushing of the portion of the meta data includes:segmenting the meta data by a plurality of segments based on the qualityof service requirement; and flushing by a unit of each of the pluralityof segments.
 14. The operating method according to claim 13, wherein asize of each of the plurality of segments is changed during a runtime ofthe data storage system, and wherein the size of each of the pluralityof segments is changed depending on a data amount for processing anunprocessed workload.
 15. The operating method according to claim 14,further comprising: setting the size of each of the plurality ofsegments based on a data amount to be processed within the quality ofservice requirement and the data amount for processing the unprocessedworkload.
 16. The operating method according to claim 14, wherein thedata amount for processing the unprocessed workload includes a dataamount for processing a background operation to be preceded to processthe plurality of requests.
 17. The operating method according to claim15, wherein the meta data includes an address map.
 18. A data storagesystem comprising: a nonvolatile memory device for storing dataincluding host data provided by a host; a random access memory forstoring meta data for managing the host data; and a control unitconfigured to process a request provided by the host and adaptivelyflush the meta data stored in the random access memory to thenonvolatile memory device with relation to a quality of servicerequirement for the request provided by the host, wherein the quality ofservice requirement for the request relates to a type of the host.
 19. Adata storage system comprising: a nonvolatile memory device for storinguser data received from a host; a random access memory for storing metadata related to the user data; and a control unit configured to change aminimum unit of the meta data that is flushed to the nonvolatile memorydevice based on a data amount to be processed within a quality ofservice requirement for a request received from the host and a dataamount for processing an unprocessed workload.
 20. An operating methodfor a data storage system comprising: storing meta data in a randomaccess memory; processing a request received from a host; and changing aminimum unit of the meta data that is flushed to the nonvolatile memorydevice based on a data amount to be processed within a quality ofservice requirement for a request received from the host and a dataamount for processing an unprocessed workload.